home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 088 / livemon.arc / LIVEMON.DOC < prev    next >
Encoding:
Text File  |  1988-04-17  |  20.1 KB  |  421 lines

  1.                           LIVEMON Ver 2.1 (4-17-88)
  2.                      A Live Program Execution Monitor
  3.                                     for
  4.                         Wildcat! Ver 1.10 and 1.11
  5.               
  6.                          (c) 1988 Stephen L. Cox
  7.              
  8.  
  9.   Livemon was developed by me to meet a specific need on my own Wildcat!
  10. system.  As I got into the development I found myself adding this and that
  11. because I was having so much fun coding it.  What I ended up with is a
  12. functional shell for a complete door monitor similar to (better than) that
  13. used in RBBS systems.
  14.  
  15.   This second version is mostly invisible to the users as they only see 1 or
  16. 2 of about 6 different lines of output.  It was setting up the port to
  17. send these few lines of output that led to the plan to expand livemon into a
  18. full blown door monitor.  The routines for handling carrier and two way 
  19. communications with the serial ports were the most difficult parts of livemon
  20. but their creation makes it as easy to send a thousand lines out the port 
  21. as 1.  I have written LIVEMON in 'C' so that it is fast, compact, flexible and
  22. easy for me to maintain and enhance.
  23.  
  24. THE PRELIMINARIES:
  25.  
  26. [[[ Limited License ]]]
  27.      This software is copyrighted but a limited license is granted and you
  28.      are free to use and share it under the following conditions:
  29.       1.  LIVEMON is not distributed in modified form
  30.       2.  No fee or other consideration is charged for LIVEMON itself
  31.       3.  Reference to the copyright and author is retained.
  32.       4.  If your Callers Like this program, or if you want updates sent to
  33.           you, or if you need support or immediate answers to problems
  34.  
  35.      Then please send a contribution of $10.00 to $15.00 to:
  36.                             Steve Cox
  37.                             Flite-Line BBS
  38.                             6740 Deerwood Dr.
  39.                             Lincoln, Ne.
  40.                                        68516
  41.  
  42.     With a donation you receive:
  43.            Program support
  44.            Registration to LIVEMON
  45.                I will try to make personal modifications for you if possible.
  46.  
  47.  
  48. [[[ Warranty ]]]
  49.  
  50.      LIVEMON is provided "AS IS" without warranty of any kind, either
  51.  expressed or implied, including, but not limited to the implied warranties
  52.  of merchantability and fitness for any purpose.  The entire risk as to
  53.  the quality and performance of this program is with the user and should
  54.  the program prove defective, the user and not the author will assume all
  55.  responsiblity with correcting all information.  The author does not warrant
  56.  that this program will function in the desired mode or will meet any users
  57.  requirements or that the operation of the program will be error free.
  58.  
  59.  But, You are certainly entitled to complain about Bugs you find in this
  60.  program and paying Users should have a bugfree program.
  61.  
  62.  This program is written in MicroSoft 'C' vr. 5.0.
  63.   
  64.  
  65.  WHAT DOES LIVEMON DO:
  66.  
  67.   LIVEMON stands between Wildcat! and the door or live program your user is
  68. going to run.  It adds several useful features to Wildcats slim support
  69. of doors.  Here are the features of Verson 1.0:
  70.  
  71. ***
  72. 1.  Livemon gives you the ability with a single parameter on the command line
  73.     that invokes it to control the amount of time the user may spend in a door.
  74.     The time specified is independent of but cannot be greater than the users
  75.     daily allowed BBS time or the Global door time which you specify. Allows
  76.     door time controls by percentage of total board time. Reward higher level
  77.     users with more live program time.
  78.  
  79. ***
  80. 2. LIVEMON provides door locking based on Wildcat security levels. You may
  81.    specify the minimum security level required to run the door on the command
  82.    line.  If security levels are not high enough, the user is not permitted
  83.    to enter the door.
  84.  
  85. ***
  86. 3. LIVEMON provides door locking based on sysop controlled file up/download
  87.    ratios.  Doors can be locked if the user has exeeded the sysop set ratio
  88.    in the LIVEMON.CFG file. Use of this feature is optional.
  89.    
  90. ***
  91. 4. LIVEMON will automatically create the PCBOARD.SYS file for you if the
  92.    door you wish to use is a PCB door.  You tell LIVEMON about it with a
  93.    a single command line switch.
  94.  
  95. ***
  96. 5. Support for Wildcat specific doors is also automatic.  The Wildcat version
  97.    of PCBOARD.SYS is CALLINFO.BBS.  In the case of a Wildcat door, no file
  98.    conversion is necessary but the CALLINFO.BBS file must be altered to pass
  99.    the proper time parameters to the door. The file generated is in Wildcat
  100.    version 1.11 format.
  101.  
  102.  
  103. **FEATURES IN DEPTH**
  104.  
  105. TIME MONITOR:
  106.  
  107.   The real reason LIVEMON was developed was to control time usage on my
  108. extremely active Wildcat system.  I currently run 15 to 20 doors and have 
  109. found it to be a problem because of the addictive nature of the games,
  110. especially those of the calibur of Trade Wars 500.  I wanted to encourage
  111. users to spend at least part of their daily time participating in other 
  112. sections of the BBS besides the games.  I had dozens of users logging in
  113. and playing out their entire daily time allotment in the doors and never
  114. doing anything else.  My reasoning is that if a user is limited to a certain
  115. amount of time that is something less than their daily board time, they might,
  116. just might, spend their remaining time doing other things.  My feeling is
  117. that this has been a success.
  118.  
  119.   The time monitor feature allows you to set the maximum amount of time a user
  120. may spend in live programs each day.  Additionally each individual door may
  121. have a time limit for each access by the user. These time limits are
  122. independent of the daily Wildcat time limit controlled by the users security
  123. level.  You may not however set the door time or global times to a number
  124. that is higher than the maximum board time.
  125.   
  126.   I'll use my board as an example; I have all level 20 users set for a daily
  127. board time limit of 60 minutes.  All level 25 users have a board time limit of
  128. 90 minutes.  Since I want them to have some time left for other things after
  129. playing their favorite game, I have set the GLOBAL DOOR time limit to 67%
  130. of their daily BBS time.  Upon entering a live program the first time on a 
  131. given day the allowed live program time will be calculated from the security
  132. level time values specified in the Wildcat! CONFIGWC.BBS file and stored in the
  133. user record. LIVEMON keeps a running record of each user entering the doors
  134. on a daily basis so it always knows how much time they have remaining for doors
  135. activity.
  136.  
  137.  There is an alternative to the above approach.  You may disable the percent
  138. feature and give each user a FLAT time limit for doors regardless of their 
  139. daily board time. This is done by setting a flag in the LIVEMON.CFG file
  140. which I will explain later.
  141.  
  142.   Each DOOR has a maximum session time that is set before the door is run.
  143. You can effectively say: The user has 40 minutes today they can use for doors
  144. but they can only spend 20 minutes per session in this particular door.
  145. They can enter the doors as many times as they want in a given day until
  146. their global door  time expires.  If their door time has been used, LIVEMON
  147. will simply inform the user of the fact and immediately return them to
  148. Wildcat!.
  149.  
  150.   There are 2 time control parameters in the LIVEMON.CFG file. Line 4 is an
  151. integer that is interpreted by a control flag in line 6 of the CFG file.
  152. If line 6 is the number 1, then the number in line 4 will be interpreted as a
  153. PERCENTAGE of the users daily board time.  If line 6 is a 0 (zero) then the
  154. number in line 4 will be a flat time limit applied to ALL users regardless of
  155. their user level.
  156.  
  157.  What this means is that if you have multiple levels of security implemented
  158. in Wildcat with different daily time limits for them and you set line 4 to
  159. 65 and line 6 to 1 then each user will get 65% of their daily board time
  160. allowed for live programs.  If you set line 4 to 40 and line 6 to a 0 (zero)
  161. then ALL users would get 40 minutes live program time regardless of their
  162. board time limit.
  163.  
  164.  All of that might need a bit simpler explaination so here goes.  When a user
  165. enters a door for the first time on a given day, the Wildcat! CONFIGWC.BBS is
  166. read and the users security level is checked to see what their daily maximum
  167. board time limit is.  This is set by you when you run Makewild!.  
  168.  
  169.  If you have enabled PERCENTAGE calculations, then the max door time is
  170. calculated from the time values found in the CONFIGWC. This ensures that the
  171. user will get the proper amount of door time each day because it is not
  172. dependent on the time he/she had left when they entered doors.
  173.  
  174.   If however the user has been on the board for some period of time and their
  175. board time remaining has gone below what WOULD have been their max door time
  176. then they are given whatever board time remains for doors.
  177.  
  178.   By using this percentage method a user will NEVER get more door time than the
  179. percentage you specify but they will always get what is coming to them.
  180.  
  181.  Here is practical example of what I mean:
  182.  
  183. 1.  A user on your board has security level 50 which gives them 90 minutes per
  184.     day on the board.
  185.    
  186. 2.  You set Livemon to calculate door time at 67% of daily board time.
  187.     (that actually works out to 60 minutes of live program time per day for
  188.     this user)
  189.  
  190. 3.  The user logs on and spends 10 minutes downloading files. His board time
  191.     remaining is now 80 minutes.
  192.  
  193. 4.  The user now runs a live program for the first time.
  194.  
  195. 5.  Since they still have 80 minutes of board time left, and they had 90 to
  196.     start, the calculation of 60 minutes live program time is still valid
  197.     so they get 60 minutes today for doors.. If they had downloaded for 45
  198.     minutes, leaving them only 45 minutes of board time remaining, they would
  199.     have been given 45 minutes for doors instead of 60. (geez I'm confusing
  200.     myself)
  201.  
  202.     It may sound a little complex but believe me it works!
  203.         
  204.   
  205.  You DO have the option to use LIVEMON with only a few select doors rather 
  206. than all of them.  If you do not wish to charge the users time bank for the
  207. use of a door, then just don't run livemon for it.  An example of why you
  208. might do this is Card Guppies.  Guppies requires only a very short period
  209. of time to run, 2 to 4 minutes is typical.  Guppies itself will not allow a
  210. player to enter it twice in one day. It's use doesn't really congest the board
  211. so I don't charge the users time bank for it's use.  Things like Trade Wars
  212. and Bay Street Bulls are quite a different matter.  I have some users that
  213. would spend 24 hours a day in them if they could.      
  214.  
  215.  
  216.  
  217. SECURITY MONITOR:
  218.   My BBS is a semi-closed board. That is users must be verified before they
  219. are given full access to the board.  I don't want new users getting into
  220. the big games and clobbering things before I knew who they were.  But at the
  221. same time I want to be able to allow them controlled access to a few of the
  222. doors to whet their appetite.  I needed a way to allow doors to run that
  223. was tied to a users security level.  This lets me display the FULL Live
  224. program menu to all users, but permit only limited access to individual doors
  225. based on Wildcat security levels.
  226.  
  227. UP/DOWNLOAD RATIO MONITOR (UDR):
  228.   Use of this feature is optional and is controlled by a parameter in the 
  229. LIVEMON.CFG file.  Some sysops have asked for this feature so it has been
  230. included for your use.  You may set on LINE #5 of the LIVEMON.CFG a number that
  231. will be used to determine the users current up/download ratio. This may be any
  232. number you wish.  If you do not wish to use the UDR monitor simply put a 0 on
  233. line 5 of the CFG file and this feature will be disabled. CAUTION, this 
  234. feature is all or nothing, it cannot be set to different ratios for different
  235. classes of users.
  236.  
  237.  
  238. PCBOARD.SYS and CALLINFO.BBS CONVERSIONS:
  239.   Most of the doors we have available today were designed to run under either
  240. the PCBoard system or RBBS-PC.  At present there are very few Wildcat specific
  241. doors available.  Due primarily to the efforts of people like Mike Cleverly,
  242. Sysop of Acheron in Bountiful Utah, I'm sure that the number of Wildcat doors
  243. will grow quite rapidly.  In the meantime we have to be content running the
  244. PCBoard and RBBS versions of everything.  If you've been running doors you 
  245. already know that getting PCB doors to run under Wildcat requires some
  246. gyrations that I wish we could do without.  To run a PCBoard door under
  247. Wildcat, a file called CALLINFO.BBS must be converted to a form that the
  248. PCB door can understand. 
  249.  
  250.  
  251.   The primary file needed by PCB doors is PCBOARD.SYS.  This file contains
  252. all of the user information required by the door for proper execution.  It is
  253. built each time a door is used and is unique to each user.  There are 1 or 2
  254. other files that are sometimes required by a PCB door, such as PCBOARD.DAT
  255. but these files need only be created once and are not changed.  
  256.  
  257.   By using a single character switch on the the command line you can tell
  258. LIVEMON that it will be executing a PCBoard door, or a Wildcat door. The 
  259. conversion and construction of all the required dynamic files required by the
  260. door is automatic.  This means that if you are running LIVEMON, you can
  261. discontinue the use of all other programs or utilities that create the
  262. pcboard.sys file.
  263.  
  264. INSTALLING AND USING LIVEMON:
  265.  
  266.   Getting LIVEMON to work with your system is really quite easy but you MUST
  267. do it right.  The ARC package you downloaded should contain the following 
  268. files:
  269.  
  270.                  LIVEMON.EXE -----> The Live Program Monitor
  271.                  LIVEUSER.DAT ----> Daily users file MUST BE PRESENT
  272.                  LIVEMON.CFG -----> Example configuration file
  273.          LIVEMON.DOC  ----> This file
  274.                  SAMPLE.BAT ------> Sample LIVEx.BAT using LIVEMON
  275.               
  276.       LIVEUSER.DAT, LIVEMON.CFG and LIVEMON.EXE must be in the Wildcat
  277.       directory, not the sub-directory from which the door will run.
  278.       
  279.    If any of the above files are missing, Call Flite-Line BBS, 402-421-2434
  280. for the latest complete version.
  281.  
  282.   The first order of business is to either create a new LIVEMON.CFG file or
  283. modify the example .CFG included.
  284.  
  285. The sample LIVEMON.CFG file reads like this:
  286.  
  287. Flite-Line    <--1-- Your BBS name (35 chars max)
  288. Steve         <--2-- Sysop first name (15 chars max)
  289. Cox           <--3-- Sysop last name (25 chars max)
  290. 40            <--4-- GLOBAL time limit for daily doors activity
  291. 10            <--5-- Upload/Download ratio (10:1) Enter 0 to disable feature
  292. 0             <--6-- Interpret line 4 as FLAT time
  293.  
  294.  In the above example ALL users would get 40 minutes of live program time per
  295. day because percentage calculation is turned off in line #6. Doors will be 
  296. locked if the users up/down load ratio is not within 10 to 1.
  297.  
  298. EXAMPLE #2
  299.  
  300. Flite-Line   <--1-- Your BBS name (35 chars max)
  301. Steve        <--2-- Sysop first name (15 chars max)
  302. Cox          <--3-- Sysop last name (25 chars max)
  303. 65           <--4-- GLOBAL time limit for daily doors activity
  304. 0            <--5-- Upload/Download ratio checking OFF because it's 0
  305. 1            <--6-- Interpret line #4 as a PERCENTAGE instead of FLAT time.
  306.  
  307.   In this example the users live program time is variable because of their
  308. security levels.  Because line #6 is 1, line #4 (65) is interpreted as a
  309. percentage of their daily board time.  Simply means that each user will get
  310. 65% of their remaining daily BBS time for live programs when they enter 
  311. live programs for the first time. Also in this example Upload/Download ratio
  312. checking is turned off because line #5 is zero.
  313.  
  314.   The LIVEMON.CFG file ** MUST ** be present and in the Wildcat directory
  315. along with LIVEMON.EXE and LIVEUSER.DAT.  It should NOT be in the subdirectory
  316. from which the door will be run.
  317.  
  318.   LIVEMON should be included in EACH LIVEx.BAT file whose execution you want
  319. to be time and security controlled.  The following is an example listing
  320. of a batch file to run Trade Wars 500 on my system. You do not need to run 
  321. LIVEMON if you do not want to charge the users time bank for use.  If you
  322. do not use LIVEMON then you must still run either PCB2WC or MAKEPCB if the
  323. door is a PCBoard door.
  324.  
  325. * Assumes you are running the PCBoard version of TW 500.
  326.  
  327.               LINE# 1      cls
  328.                     2      echo off
  329.                     3      LIVEMON START P 25 30 1
  330.                     4      IF ERRORLEVEL 1 GOTO END
  331.                     5      CD \WILDCAT\TW500
  332.                     6      TW2 TW2.CFG
  333.                     7      CD \WILDCAT
  334.             8      LIVEMON EXIT P
  335.                     9      :END
  336.                     10     CAT
  337.  
  338.  EXPLAINATION:
  339.  
  340.      Lines 1 & 2     clear the screen and turn off echo
  341.                3     LIVEMON START P 25 30 1
  342.                      Run LIVEMON with the following parameters
  343.                  START .. Setup the user for entry to a door
  344.                  P .. May be P or W for PCBoard or Wildcat door.
  345.             25 .. Maximum time user may spend in this door.
  346.                               Overridden if board time is less or if the
  347.                               user has less door time left than this number.
  348.                         30 .. Minumum security level user must have to run
  349.                               this door is 30 (may be any valid Wildcat
  350.                   security level).
  351.                          1 .. Comport system is using. May be 1 or 2
  352.  
  353.                4     IF ERRORLEVEL 1 GOTO END
  354.                      If livemon will not permit the user to enter the door 
  355.                      because of insufficient time remaining or security is to
  356.              low it will exit with an errorcode of 1. This line simply
  357.              tells the batch file to reload Wildcat! if the user can't
  358.              run the door.
  359.  
  360.            5 & 6     TW2 TW2.CFG
  361.                      Change to the Tradewars directory and execute the game.
  362.        
  363.                7     CD \WILDCAT
  364.                  Change back to the Wildcat directory
  365.                
  366.            8     LIVEMON EXIT P
  367.                        EXIT .. Door execution is complete, update users time
  368.                                record.
  369.                           P .. Door run was a PCBoard door so exit noramlly.
  370.                    If parameter is W, delete dummy CALLINFO.BBS
  371.                                and restore original.
  372.  
  373.                9     :END
  374.                   The target label for an error exit.
  375.  
  376.  
  377.               10     CAT
  378.                  Restart Wildcat!
  379.  
  380.   Thats all there is to it.  Just remember that LIVEx.BAT files that use
  381.  LIVEMON should have the session time parameter (25 in the example) set to
  382.  a value that is less than or equal to the global time limit set in the
  383.  LIVEMON.CFG file.
  384.  
  385.  If you have problems getting LIVEMON to run, give me a call on Flite-Line at
  386. 402-421-2434, 24hrs 7days at 300/1200/2400/9600 USR and I will assist you in
  387. getting it running.  If you need to talk to me voice, you can call 
  388. 402-421-3065 after 7:00pm Central time and I will be glad to help you out.
  389.  
  390.   Again if you are going to continue using LIVEMON, please fill out the 
  391. form below and mail it to me so I can make sure you get notified of an update.
  392. Your suggestions for improvement and your bugs reports will be appreciated.
  393.  
  394. Steve Cox
  395. Flite-Line BBS
  396. 6740 Deerwood Dr.
  397. Lincoln, Ne. 68516
  398. DATA 402-421-2434  300/1200/2400/9600 USR
  399. VOICE 402-421-3065                 
  400.  
  401. ------------------------------------------------------------------------------
  402.                            LIVEMON 2.1 REGISTRATI0N
  403.                    
  404. NAME: ________________________________     ADDRESS: __________________________
  405.  
  406. CITY: ___________________  STATE: ___   ZIP: ________  PHONE: _____________
  407.  
  408. VERSION OF LIVEMON YOU ARE USING: _________    VERSION # OF WILDCAT: _________
  409.  
  410. COMMENTS: ____________________________________________________________________
  411.           ____________________________________________________________________
  412.       ____________________________________________________________________
  413.  
  414. CONTRIBUTION OF: $_________  Enclosed.  Give me support and upgrades!
  415.  
  416. MAIL TO:            Steve Cox
  417.                     Flite-Line BBS
  418.                     6740 Deerwood Dr.
  419.                     Lincoln, Ne. 68516
  420. ______________________________________________________________________________
  421.